home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / scheme / schematk / src_1152.lha / Doc.subproj / DocText.h < prev    next >
Encoding:
Text File  |  1991-12-15  |  2.8 KB  |  94 lines

  1. /* Copyright รก 1991 Gustavus Adolphus College.  All rights reserved.
  2.  *
  3.  * Schematik was developed by Gustavus Adolphus College (GAC) with
  4.  * support from NeXT Computer, Inc.  Permission to copy this software,
  5.  * to redistribute it, and to use it for any purpose is granted,
  6.  * subject to the following restrictions and understandings.
  7.  *
  8.  * 1. Any copy made of this software must include this copyright
  9.  * notice in full.
  10.  *
  11.  * 2. Users of this software agree to make their best efforts (a) to
  12.  * return to the GAC Mathematics and Computer Science Department any
  13.  * improvements or extensions that they make, so that these may be
  14.  * included in future releases; and (b) to inform GAC of noteworthy
  15.  * uses of this software.
  16.  *
  17.  * 3. All materials developed as a consequence of the use of this
  18.  * software shall duly acknowledge such use, in accordance with the
  19.  * usual standards of acknowledging credit in academic research.
  20.  *
  21.  * 4. GAC makes no express or implied warranty or representation of
  22.  * any kind with respect to this software, including any warranty
  23.  * that the operation of this software will be error-free.  ANY
  24.  * IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
  25.  * PURPOSE IS HEREBY DISCLAIMED.  GAC is under no obligation to
  26.  * provide any services, by way of maintenance, update, or otherwise.
  27.  *
  28.  * 5. In conjunction with products arising from the use of this
  29.  * material, there shall be no use of the name of Gustavus Adolphus
  30.  * College nor of any adaptation thereof in any advertising,
  31.  * promotional, or sales literature without prior written consent
  32.  * from GAC in each case.
  33.  */
  34.  
  35. #import <appkit/Text.h>
  36.  
  37. @interface DocText:Text
  38. {
  39.     id    markerList;
  40.     id    indentationState;
  41. }
  42.  
  43. - appendNewlineIfNeeded;
  44. - appendText:(const char *)aString commented:(BOOL)aBoolean withNewline:(BOOL)aBoolean2;
  45. - (STR)getAll;
  46. - (STR)getSelection;
  47. - setInsertionBar:(int)anInt;
  48. - (BOOL)selectScope;
  49. - (BOOL)selectScope2;
  50. - saveSelectionState;
  51. - restoreSelectionState;
  52. - formatTextSelectionOnly:(BOOL)aBoolean;
  53. - (int)stringSearch:(const char *)theTarget forAgent:theAgent direction:(int)direction ignoreCase:(BOOL)ignorecase  wholeWord:(BOOL)wholeword inSel:(BOOL)inSel;
  54.  
  55. @end
  56.  
  57. #define MARKLEFT    -10
  58. #define MARKCENTER    0
  59. #define MARKRIGHT    10
  60.  
  61. @interface Marker:Object
  62. {
  63.            int    charpos;
  64.    signed char    type;
  65. }
  66.  
  67. - initAt:(int)anInt type:(signed char)aChar;
  68.  
  69. - (int)markerPosition;
  70. - adjustTo:(int)anInt forPositionsFrom:(int)begin to:(int)end andAfterBy:(int)anInt2;
  71. - adjustTo:(int)anInt;
  72.  
  73. @end
  74.  
  75. @interface IndentationState:Object
  76. {
  77.   id text;
  78.   int knownLine;
  79.   NXStream *stream;
  80.   void *contexts;
  81.   BOOL inString;
  82.   int keywordListVersion;
  83. }
  84.  
  85. - changeAt:(int)position;
  86. - initText:text;
  87. - (int)determineIndentation:(int)line;
  88. - setupStream;
  89. - scanLine;
  90. - (int)indent;
  91. - describeSelf;
  92.  
  93. @end
  94.